Флаги
O D I T S Z A P C ? ? ? ? ? ?
Команда:
DIV source
Логика:
AL = AX / source ;операнд source - байт AH = remainder or AX = DX:AX / source ;операнд source - слово DX = remainder
Эта команда выполняет деление без учета знака. Если операнд source является байтом, то DIV делит значение слова в AX на операнд source, засылая частное в AL и остаток (remainder) в AH. Если же операнд source является словом, то DIV делит значение двойного слова из DX:AX на операнд source, засылая частное в AX и остаток в DX.
Операнды | Такт байты (слова) | Обращения | Байты | Пример |
регистр8 | 0-90 | - | 2 | DIV BL |
регистр16 | 4-162 | - | 2 | DIV BX |
память8 | (86-96)+EA | 1 | 2-4 | DIV VYUP |
память16 | (154-172)+EA | 1 | 2-4 | DIV NCONQUER[SI] |
Примечания:
Если результат слишком велик и не умещается в AL (соотв. AX), то генерируется прерывание INT 0 (деление на ноль), и тогда частное с остатком не определены. Когда генерируется прерывание INT 0, то для процессоров 80286 и 80386 запоминаемое значение CS:IP указывает на неудавшуюся команду (т.е. на команду DIV). Для процессоров 8088/8086 CS:IP указывает, однако, на команду, следующую за неудавшейся командой DIV.